1. Field of Invention
The present invention relates generally to performing searches and, more particularly, to a method of finding results by incremental search using a keypad having overloaded keys as the input device when the input contains orthographic and typographic errors.
2. Description of Related Art
Challenges to providing an easy-to-use interface for performing searches on input constrained devices such as television remote controls and mobile devices are many, the key among them being (1) the small form-factor of devices, which makes text input cumbersome, (2) interpreting the ambiguous user input from a text input keypad having overloaded keys (e.g., as shown in FIG. 6), (3) rendering the results on a limited display with the correct ordering so that the user finds the desired results with minimal or reduced input, and (4) misspellings or errors in user input contributed in part by the small form factor of devices (the rest being caused cognitive errors). Some reports indicate that 10-12% of all queries to a search engine are misspelled (Mansour Sarr 2003). The error rate is believed to be even higher when using input constrained devices, where the limitation of inputting text makes them more prone to typographic errors (e.g. multi-press character overshoot for TV remote controls with overloaded keys such as “spejl” instead of “spell”, and accidental adjacent character press on phones with crowded keypads). Additionally, users may make orthographic errors, i.e., spelling errors arising from mistakes in cognitive processing, such as simple misspellings or phonetic substitutions (e.g. “Jerry Sienfeld” instead of “Jerry Seinfeld” or “nite” instead of “night”). A method that reduces the number of query characters one needs to input would not only significantly improve the user experience but also reduce the likelihood of more errors due to entry of additional characters.
Though correction methods for orthographic errors (e.g. mistakes due to phonetic errors) and typographic errors (e.g. mistakes due to pressing a key adjacent to the key containing the intended character) are known, none of them perform error correction on input (1) that is itself ambiguous and (2) that contains multiple word queries where one or more of the words are partial prefixes or fragments of the words they represent. While phonetic error corrections algorithms have been in use since 1918 (e.g., U.S. Pat. No. 1,261,167) and various subsequent improvements have been made (e.g., Daitch-Mokotoff Soundex System, Phonix, and Metaphone), the basic notion of phonetic error correction has changed little. The focus of these error correction schemes have been on single complete words. First, they do not perform phonetic correction across multiple words (e.g. “Jery Sienfeld” instead of “Jerry Seinfeld”). Second, they do not perform phonetic error correction methods across multiple word prefixes (e.g. “gar keillor” for “Garrison Keillor”. However, according to a Majestic Research Report study done in June 2004, 50% of the search queries done on the web have two or three words, 20% of the searches use just one word, with 5% of the searches having more than six words. This report highlights the need to compensate for errors across multiple words in order to provide a compelling user experience.
Furthermore, even though recent work has been done to improve search engine retrieval using stemming and compound splitting to correct errors across multiple complete words, the techniques are not for incremental searching (results retrieved as each character is input) since the words need to be complete words (see Dalianis, Hercules, “Improving search engine retrieval using a compound splitter for Swedish”, Presented at Nodalida 2005—15th Nordic Conference on Computational Linguistics, May 21-22, 2005, Joensuu, Finland). Additionally, they do not address the case of performing error correction across multiple word prefixes (“shyl pcno” for “Shylock Pacino”), which is required when performing an incremental search. They also do not address error correction on input using a keypad with overloaded keys—which is the predominant layout of keys on telephones and remote controls. To summarize, the challenges to compensate for orthographic and typographic errors in an incremental search scheme with reduced text entry needs be addressed by a method (1) that can perform both forms of error compensation (orthographic and typographic) across multiple words of the query, (2) that can perform error compensation for single or multiple word prefixes and/or word fragments where the prefixes and/or fragments themselves have orthographic and typographic errors, (3) that can dynamically compensate for errors during an incremental search as the user types in the single or multiple prefixes constituting the query string, and (4) that can perform these error compensations for an input query that is itself ambiguous as a consequence of the user inputting text with a keypad having overloaded keys.